﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MvcApplication1.Models;

namespace Ligas.Tests.Fakes
{
    public class FakeRepositorioLiga : FakeRepositorioBase, IRepositorioLiga
    {
        private List<Liga> ligas;

        public FakeRepositorioLiga(List<Liga> ligas)
        {
            this.ligas = ligas;
        }

        public void AgregarLiga(Liga liga)
        {
            ligas.Add(liga);
        }

        public void EliminarLiga(Liga liga)
        {
            ligas.Remove(liga);
        }

        public IQueryable<Liga> EncontrarTodasLasLigas()
        {
            return ligas.AsQueryable();
        }

        public Liga getLiga(int indice)
        {
            return ligas.SingleOrDefault(d => d.IDLiga == indice);
        }

        public override void Save()
        {
            foreach (Liga l in ligas)
                if (!l.EsValido)
                    throw new ApplicationException("Violacion de Reglas");
        }


        public Liga getLiga(string nombreLiga)
        {
            throw new NotImplementedException();
        }
    }
}
